﻿using ConfExpert.Forms.Base;
using DevExpress.XtraEditors.Repository;

using DevTeamIT;
using Extensions;
using System;
using System.Windows.Forms;

namespace ConfExpert.Forms.IT
{
    public partial class TelefonListesi : XForm
    {
        public TelefonListesi()
        {
            InitializeComponent();
        }

        private void TelefonListesi_Load(object sender, EventArgs e)
        {
            gvTelefonListe.Init("IT_GetTelefonListesi", Session.SirketId);
            gvTelefonListe.OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;

            RepositoryItemComboBox riTarife = new RepositoryItemComboBox();
            riTarife.Items.AddRange(new object[] { 
                "1200", 
                "2400",
                "600", 
                "3600", 
                "Kapalı", 
                "İŞ AVANTAJ HER YÖNE 100",
                "İŞ AVANTAJ HER YÖNE 200",
                "İŞ AVANTAJ HER YÖNE 300",
                "İŞ AVANTAJ HER YÖNE 600",
                "İŞ AVANTAJ HER YÖNE 1000",
                "İŞ AVANTAJ HER YÖNE 1500",
                "İŞ AVANTAJ HER YÖNE 2000",
                "İŞ AVANTAJ HER YÖNE 3500",
                "İŞ AVANTAJ HER YÖNE 5000",
                "İŞ AVANTAJ BİZ 100",
                "İŞ AVANTAJ BİZ 200",
                "444 STANDART TARIFE"
            });
            riTarife.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
            gvTelefonListe.Columns["TarifeName"].ColumnEdit = riTarife;

            RepositoryItemComboBox riOperator = new RepositoryItemComboBox();
            riOperator.Items.AddRange(new object[] { "AVEA", "VODAFONE", "TURKCELL", "TÜRK TELEKOM" });
            riOperator.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
            gvTelefonListe.Columns["OperatorName"].ColumnEdit = riOperator;

            RepositoryItemComboBox riHatTipi = new RepositoryItemComboBox();
            riHatTipi.Items.AddRange(new object[] { "Ses", "Data", "Ses+Data", "Fax" });
            riHatTipi.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
            gvTelefonListe.Columns["HatTipi"].ColumnEdit = riHatTipi;

            RepositoryItemComboBox riRoaming = new RepositoryItemComboBox();
            riRoaming.Items.AddRange(new object[] { "Açık", "Kapalı" });
            riRoaming.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
            gvTelefonListe.Columns["Roaming"].ColumnEdit = riRoaming;

            RepositoryItemComboBox riOzelTanimliPaket = new RepositoryItemComboBox();
            riOzelTanimliPaket.Items.AddRange(new object[] { "Açık", "Kapalı" });
            riOzelTanimliPaket.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
            gvTelefonListe.Columns["OzelTanimliPaket"].ColumnEdit = riOzelTanimliPaket;


            gvTelefonListe.SetCaptions("TarifeName:Tarife Adı", "OperatorName:Operatör");
            //gvTelefonListe.MakeColumnsReadOnly("SirketId");
            gvTelefonListe.AddSummary("TarifeFiyat");
            gvTelefonListe.BestFitColumns();

            this.FormClosing += TelefonListesi_FormClosing;
            btnKaydet.ItemClick += btnKaydet_ItemClick;


        }

        void TelefonListesi_FormClosing(object sender, FormClosingEventArgs e)
        {
            DialogResult dr = MessageBox.Show("Değişiklikleri kaydetmemiş olabilirsiniz; çıkmak istediğinize emin misiniz?", "Uyarı", MessageBoxButtons.YesNo);

            if (dr == DialogResult.No)
                e.Cancel = true;
            else
                e.Cancel = false;
        }

        void btnKaydet_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            gvTelefonListe.EndEdit();
            gvTelefonListe.Update("", "IT_Telefon");
            gvTelefonListe.VeriyiGuncelle("IT_GetTelefonListesi", Session.SirketId);
            gvTelefonListe.BestFitColumns();
        }
    }
}
